<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>


<script>
    //开启严格检查模式
    "use strict"

    //定义数组  数组存放 123456
    var arr = [1, 2, 3, 4, 5, 6,"1","2"]

    //获取数组的长度
    document.write(arr.length)

    //数组长度可变  给 下标为9定义内容
    arr[9] = "憨憨";
    //打印 下标为9 的元素内容
    console.log(arr[9])
    //没有定义下标为8元素内容 所以 打印会出undefined  是未定义 没有报错
    console.log(arr[8])

    //定义数组长度  数组长度可变 （尽量不要瞎玩）
    arr.length = 3;
    console.log(arr.length)
    //打印超出下标的元素内容 会出现 undefined 未定义
    console.log(arr[5])

    //**********************数组方法********************

    //和 字符串使用方式一样  获得元素下标的索引
    var array = [1, 2, 3, 4, 5, 6,"1","2"]
    console.log(array.indexOf(3))
    //字符串  1  和 1 是不一样的
    console.log(array.indexOf(1))
    console.log(array.indexOf("1"))

    //截取部分 和字符串的substring使用一样  返回一个新的数组
    console.log(array.slice(1,3))
    console.log(array.slice(3))

    //压入到尾部
    array.push("11","22","djx","lrh","hh","hp")
    console.log(array)

    //弹出尾部一个元素
    array.pop();
    console.log(array)

    //压入到头部
    array.unshift("我是头","我是第二个")
    console.log(array)

    //弹出头部的一个元素
    array.shift();
    console.log(array)


    var array01 = ["A",1, 3, 5, 2, 5,"Z", 0,"1","2","B"]
    //数组排  从小到大  数字在前 字母在后
    array01.sort()
    console.log(array01)

    //***************************************************

    var array02 = ["憨憨","大哥","敦佳星","啊好帅！"]
    array02.sort()
    console.log(array02)

    //元素反转
    array02.reverse();
    console.log(array02)

    //数组拼接  浏览器操作 不然看不到效果
    var array03 = ["nihao","我不好"]
    array03.concat([1,2,3])
    //可以理解为临时拼接 但不会改变数组
    console.log(array03)


</script>
</body>
</html>